rspsfandomcom-20200214-history
OSRS83 Protocol
Welcome Foreword I created this wiki page for the community. If you have any knowledge (no matter how small) on OSRS83, feel free to contribute to this article. I hope we can bring this revision and the RSPS community as a whole to a new level by documenting as much as possible. * Cramer * Leanbow * Im Frizzy Downloads Client Deob Client Cache Item List (id, name) Object List (id, name) Login Breakdown Stage 0 (Client) This stage is called for disconnecting, for example when in Stage 6 a response code of 23 (No reply from loginserver) is received. Stage 1 (Client) The Client creates the connection Stage 2 (Client -> Server) The client writes 1 byte with value 14. Stage 3 (Server -> Client) The server sends 1 byte. If this byte is 0, the client proceeds to Stage 5 Stage 4 Stage 5 (Client -> Server) Part 1: Plain Part 2: RSA Encrypted Get bytes to an array the size of "RSA Block Size". Create a BigInteger from this Array. Decrypt that BigInt with modPow and wrap its ByteArray in a new ByteBuffer. *Note Type 0 isn't 100% known. *Note: Assuming Types 1 & 3 are for new inputs and 'trust this computer for 30 days' inputs Part 3: xtea Encrypted Stage 6 (Server -> Client) The server sends a response code. This value can be any of the following: # Unexepected server responce please try using a different world. # login to the game # Invalid name/password # banned username # Account is already logged in try agian in 60 secs... # Client has been updated! Please reload this page. # This world is full. Please use a different world. # Unable to connect. login server offline. # Login limit exceeded. Too many connections from you address. # Unable to connect. Bad session id. # We suspect someone knows your password. Press 'change your password' on the front page. # You need a members account to login to this world. Please subscribe, or use a different world. # Could not complete login. Please try using a different world. # The server is being updated. Please wait 1 minute and try again. # See here # Too many incorrect longs from your address. Please wait 5 minutes before trying again. # You are standing in a members-only area. To play on this world move to a free area first. # Account locked as we suspect it has been stolen. Press 'recover a locked account' on front page. # This world is running a closed beta. sorry invited players only. please use a different world. # Invalid loginserver requested please try using a different world. # You have only just left another world. your profile will be transferred in xxx seconds. # Malformed login packet. Please try agian. # No reply from loginserver. Please wait 1minute and try again. # Error loading your profile. please contact customer support. # Unexepected loginserver response # This computers address has been blocked as it was used to break our rules. # Service unavailable. 56. Authenticator Login. As you can see this is a response to the data gathered in from Stage 5. Most of the response codes will lead to going to Stage 0 '''and thus disconnecting from the server. The only exceptions are: * when the response code is 2, the client will immediately go to '''Stage 9. This is the normal flow when someone logs in 100% correctly. * when the response code is 21, the client will go to 'Stage 7 ' Stage 7 (Server -> Client) When the player just left another world. The server sends a byte containing the time for the client to wait to reconnect. The client then proceeds to Stage 8 Stage 9 Stage 10 Game Packets Server -> Client 14 Set skill level & exp 25 Object Spawn? 95 ? 113 Camera 127 Ground item... 239 200 Spawn ground item 239 Cache Index Files There are 16 index files 0-15 and one reference file 255. Config The config index file contains data on the following: __INDEX__